This is how it used to work, you only get grab broken if someone
else gets a grab, or if the grabbed window gets destroyed or unmapped.
(event->button.state & GDK_ANY_BUTTON_MASK & ~(GDK_BUTTON1_MASK << (event->button.button - 1))) == 0)
{
button_release_grab->serial_end = serial;
- button_release_grab->implicit_ungrab = TRUE;
+ button_release_grab->implicit_ungrab = FALSE;
_gdk_display_pointer_grab_update (display, serial);
}
}
(event->button.state & GDK_ANY_BUTTON_MASK & ~(GDK_BUTTON1_MASK << (event->button.button - 1))) == 0)
{
button_release_grab->serial_end = serial;
- button_release_grab->implicit_ungrab = TRUE;
+ button_release_grab->implicit_ungrab = FALSE;
_gdk_display_pointer_grab_update (display, serial);
}
}